package com.zhijian.medical.entity.po;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 消息通知
 *
 * @author Auto Generator
 * @date 2022-06-07 15:54:02
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Api(tags = "消息通知")
public class Message {
    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    private Long id;

    /**
     * 标题
     */
    @ApiModelProperty("标题")
    @NotBlank(message = "标题不能为空")
    private String title;

    /**
     * 内容
     */
    @ApiModelProperty("内容")
    private String content;

    /**
     * 接收类型，0：pc，1：移动端
     */
    @ApiModelProperty("接收类型，0：pc，1：移动端")
    private Byte receiveType;

    /**
     * 接受标识，小程序消息为openid，短信为手机号码
     */
    @ApiModelProperty("接受标识，小程序消息为openid，短信为手机号码")
    private String receiveIdentifying;

    /**
     * 接收用户id，当接收类型为pc的时候，此字段为空
     */
    @ApiModelProperty("接收用户id，当接收类型为pc的时候，此字段为空")
    private Long receiveUserId;

    /**
     * 发送时间
     */
    @ApiModelProperty("发送时间")
    private Date sendTime;

    /**
     * 发送结果
     */
    @ApiModelProperty("发送结果")
    private String result;

    /**
     * 是否已读，0：未读，1：已读，当接收类型为移动端的时候，此字段为空
     */
    @ApiModelProperty("是否已读，0：未读，1：已读，当接收类型为移动端的时候，此字段为空")
    private Byte weatherRead;

    /**
     * 类型
     */
    @ApiModelProperty("类型")
    private Byte type;

    /**
     * 关联数据id，比如保洁通知id
     */
    @ApiModelProperty("关联数据id，比如保洁通知id")
    private Long dataId;

    private String ext1;

    private String ext2;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private Date updateTime;
}